There is known a disk array device, as an external storage device, for use in a large-scale business-use server or other computer systems, for implementing large-capacity and high-speed processing, and improved fault-tolerance. The disk array device is a system, in which a group of disks are utilized like one disk (one volume). In the following, a virtual disk constituted of a group of disks to be implemented by a disk array is called as a logical disk.
In a disk array device, a level of RAID (Redundant Arrays of Inexpensive Disks) to be used is selected according to a required reliability, speed, and use efficiency. Examples of the often used RAID levels are RAID 0 only having a striping function of recording one data in a plurality of disks by distributing the data, RAID 1 having a mirroring function, RAID 5 in which user data and parity data calculated on the basis of a block are recorded by distributing (striping) the data, and RAID 6 in which user data and two kinds of parity data calculated on the basis of a block are recorded by distributing (striping) the data. Further, there is also used a configuration in which these RAID levels are combined with each other, for instance, RAID 10 in which a group of data subjected to mirroring is subjected to striping.
In this example, there is described RAID 6, which is often used in a situation that a certain speed and use efficiency are required, while securing a certain degree of redundancy.
FIG. 17 is a diagram for describing a conventional RAID 6 system. FIG. 17 shows an example of a RAID 6 system employing P+Q method, which is constituted of four disk devices 201 to 204. Regarding the four disk devices 201 to 204 constituting a RAID, the first disk device 201, the second disk device 202, the third disk device 203, and the fourth disk device 204 are respectively defined as RAID#0, RAID#1, RAID#2, and RAID#3. In a disk array constituted of the four disk devices as a group having one volume, the logical address seen from a host device is assigned in the order of RAID#0, RAID#1, RAID#2, and RAID#3 except for the parity data.
In a RAID, the storage area of each of the disk devices is managed by dividing the storage area into blocks each having the same size as the size of a logical sector, or blocks each having the size equal to the multiple number of the size of a logical sector. Referring to FIG. 17, blocks Ai, Bi, Pi, Qi (i=1, 2, 3, . . . ) constitute one stripe. The block Pi and the block Qi are parity blocks. In the block Pi, a computation result on an exclusive OR of data at the same byte position as the block Ai and the block Bi is stored. In the block Qi, a computation result (also called as RS syndrome or Galois parity) given by a generating polynomial is stored. In other words, a stripe is constituted of data blocks such as the block Ai and the block Bi, and parity blocks such as the block Pi and the block Qi.
As an example of a parity generation method of RAID 6, there is also known a 2D-XOR method for generating parities in a diagonal direction, in addition to the aforementioned P+Q method. In the following, the P+Q method is described as an example of the parity generation method of RAID 6 in the present specification.
In RAID 6, it is possible to recover stripe data, even in the case where data cannot be reproduced resulting from failure of two or less disk devices, for instance. Further, even in the case where a recording operation or a reproducing operation cannot be performed resulting from failure of one disk device, for instance, it is possible to continuously perform a recording operation or a reproducing operation with the degree of redundancy substantially the same as RAID 5 having one parity block. For instance, referring to FIG. 17, let it be assumed that a reproducing operation cannot be performed resulting from failure of the first disk device 201. Then, it is possible to recover the block A1 by computing an exclusive OR of data at the same byte position as of the block B1 and the block P1.
In the thus configured disk array device, there is also used a system incorporated with a portable media storage device as an external storage device. In a system incorporated with a portable media storage device, there is used a library device provided with a housing body which houses multitudes of information storage media, one or more recording/reproducing devices (drive devices) which read and write data, and a transporter such as a changer which transports the information storage media between the housing body and the recording/reproducing devices. Such an array system configured of a plurality of recording/reproducing devices is also called as RAIL (Redundant Arrays of Inexpensive Libraries).
In recent years, the amount of data to be stored in a large scale data center is drastically increasing. As such a data amount is increasing, the amount of data which is less likely to be referred to tends to increase. There is a demand for a portable media library device capable of reducing the electric power consumption and suitable for a long time storage, as a device which archives the data whose number of times of reference is small.
As a representative example of a portable information storage medium, there is known an optical disk such as a DVD (Digital Versatile Disc) or a Blu-ray Disc. Optical disks are roughly classified into rewritable information storage media such as DVD-RAMs and BD-REs, and write-once information storage media such as DVD-Rs, DVD+Rs, and BD-Rs.
As the large-capacity optical disks have been developed in recent years, there is an increasing opportunity of using inexpensive write-once information storage media for archiving data whose number of times of reference is small. An optical disk has a spare recording area called as a spare area in order to enhance data reliability. A recording/reproducing device is also provided with a function of performing a replacement recording operation of data in a defect block into a block within a spare area.
In a portable media library array device, constituting a RAID of information storage media sets which are loaded in a plurality of recording/reproducing devices (drive devices) provided in the library array device, and exchanging the information storage media loaded in the drive devices one after another makes it possible to use the information storage media by the number of information storage media sets larger than the number of drive devices.
There have been proposed various methods for continuously utilizing the recording/reproducing devices or the information storage media as an array device for recording or reproducing (in other words, for enhancing the usability), even in the case where failure has occurred in one of the recording/reproducing devices (drive devices) or in one of the information storage media (disks), and it is impossible to continuously utilize the recording/reproducing device or the information storage medium for a recording operation or a reproducing operation. For instance, there has been proposed a method for recovering data with use of a spare drive device (hot spare), in the case where failure has occurred in a certain drive device, or in the case where failure has occurred in a disk loaded in a drive device in an array device provided with the spare drive device loaded with a spare information storage medium. Further, there has also been proposed a method for continuously performing a recording operation or a reproducing operation without data recovery by moving a disk loaded in a failed drive device to a spare drive device, in the case where it is recognized that failure has occurred in the drive device (see e.g. patent literature 1).
Further, there has also been proposed, as a method for securing a transfer rate at the time of reproduction while securing usability, a method for stabilizing the transfer rate at the time of reproduction by returning dummy data without performing replacement processing with respect to a defect block in which a replacement recording operation has been performed, and by performing data recovery using parity data in an array device using portable information storage media such as optical disks (see e.g. patent literature 2).
However, in the case where a hot spare is provided as a spare member for a failed drive device or for a failed disk, the disk array device itself may be increased in size. This is not suitable for a data center in which a compact device is required.
Further, the conventional disk array device has not been made, taking into full consideration of a disk array device utilizing information storage media such as optical disks as a disk array (e.g. RAID 6).
For instance, let us consider a case, in which failure has occurred in one of a plurality of recording/reproducing devices constituting RAID 6. In the case of RAID 6, even if failure has occurred in one of the recording/reproducing devices, it may be preferable to continuously record or reproduce data in the aspect of usability, because the degree of redundancy corresponding to RAID 5 provided with one parity block is maintained. In the case where the disk array device is continuously used in such a state, a recording operation into an information storage medium loaded in the failed recording/reproducing device is not performed. As a result, an area corresponding to a stripe which has been recorded at a time after the failure occurrence may be brought to an unrecorded state (which may occur both in a rewritable information storage medium and in a write-once information storage medium), or may remain in a state that the data before the recording operation is left (which may occur only in a rewritable information storage medium) in the information storage medium loaded in the failed recording/reproducing device.
In many cases, a recording/reproducing device (drive device) for an optical disk such as BD-RE or BD-R is provided with a function of reporting (transferring) “00” data (dummy data) to a host device in response to a reproduction request onto an unrecorded area (e.g. see paragraph [0006] of patent literature 3). In other words, data other than the recorded data may be accurately read from an area (such as an unrecorded area) of an information storage medium, in which a recording operation has not been performed and in which a recording operation is not performed any more, against the user's intention. There is a case that “00” data is actually recorded. Accordingly, it is impossible to simply handle “00” data as invalid data. Further, in an HDD (hard disk drive) frequently used in a conventional disk array device, preformat recording is performed in order to detect a defect block at the time of shipment of the products. Therefore, in the field of magnetic disks, there is no problem to be solved regarding an unrecorded state, which may occur in optical disks as described above.
As one of the measures for solving the problem, there is proposed a method, in which an information storage medium loaded in a failed recording/reproducing device is not used for a recording operation or a reproducing operation after the time of failure occurrence at least for a period of time until data recovery is completed. This is substantially the same control method as used in a disk (media)/drive integrated HDD, which has been often used in a conventional disk array device.
Use of the above method, however, may lead to a state that the information storage medium is not used any more, regardless of a fact that the information storage medium can be used in a normal state. If such a situation is continued, the information storage medium loaded in the failed recording/reproducing device may not be used in reproducing data from an area, in which a recording operation has been accurately performed while maintaining the degree of redundancy of RAID 6. As a result, the degree of redundancy at the time of reproduction may constantly remain in a state corresponding to RAID5 having one parity block. If reproduction from two or more information storage media has failed with respect to the same stripe in the above situation, a data reproducing operation cannot be performed (data may be inaccessible). This is not preferable as a disk array device requiring high reliability.
In particular, in information storage media such as optical disks, defects may be present substantially at the same position as each other among the information storage media manufactured as a lot (in one manufacturing process). Accordingly, a recording operation or a reproducing operation may fail substantially at the same position on the information storage media. In view of the above, there is a demand for continuously using information storage media in a state that a high degree of redundancy (data reliability) is maintained at the time of recording or at the time of reproduction as much as possible.
Further, in the case of a disk array device using portable information storage media such as optical disks, it is often the case that the information storage media having recorded data are unloaded from the disk array device and managed by off-line by e.g. shelf management. In view of the above, it is presumed that prompt data recovery may be physically difficult. In such a case, it is highly likely that block data which has not been accurately recorded may remain without recovery for a long period of time.
As another problem to be solved, in the case of a disk array device using information storage media such as optical disks, there is a case that the order of an optical disk set constituting a RAID (disk array) may be changed at a timing such as repair of failure or maintenance. In such a case, if a RAID is constituted by fixedly assigning the RAID number to each of the recording/reproducing devices, the RAID numbers of the information storage media may be changed in the course of use, which may make recording control or reproduction control extremely complicated. In view of the above, it is desirable to configure a system capable of continuously using information storage media as a RAID, even if the order of the information storage media is changed in the course of use.